The present invention relates to demultiplexing a packet-based transport stream of transport stream packets each provided with a systematic forward error detection code, wherein the transport stream packets are each allocated to one of a plurality of data sinks.
Encapsulating data streams into another one is common practice and forms the basis for example for the OSI layer model. A packet-based transport stream of transport stream packets for example transports one or several data streams which in turn again comprise data packets by the data packets being embedded into the payload data sections of the transport stream packets. With DVB-H, for example, MPE sections and MPE-FEC sections are embedded into the payload data sections of transport stream packets and IP packets are again embedded into the payload data sections of the MPE sections.
For each transport stream, of course, not only one data stream may be transmitted. For each multiplex, several data streams may be transmitted via one common transport stream. The different receivers or data sinks are for example associated with different programs, like e.g. TV programs or radio programs. When multiplexing the data packets of the different receives or data sinks, the latter are embedded into the transport stream packets so that in one transport stream packet each only one section of one of the data streams is contained, i.e. each transport stream packet is allocated to exactly one data sink. The allocation of the transport stream packets to the data sinks is indicated in the interior of the transport stream packets, in a so-called transport stream header.
If, however, an FEC protection of a current transport stream packet indicates that the same is erroneous, a demultiplexer on the receive side may not rely on the fact that the indicated receiver or the addressed data sink in fact corresponds to the actual receiver or the actual addressed data sink. Consequently, the transport stream packet is discarded and supplied to none of the data sinks in order to prevent forwarding faulty data to the data sinks.
The actually addressed data sink, however, thus lacks one section of the data stream addressed to the same which may lead to high data losses. If the data packets are embedded into the payload data sections of the transport stream packets, for example by fragmentation, when losing a transport stream packet addressed to the respective data sink not only the section from the data stream addressed to the same was lost but possibly also any data packet of which a part was allotted into the lost transport stream packet. In case of an interleaver-based FEC protection of the data stream, the missing of a section from the data stream may apart from that lead to an erroneous filling in of the interleaver table, so that the complete section of the data stream in the interleaver table at the respective data sink has to be discarded.
It is the object of the present invention to provide a concept for demultiplexing a packet-based data stream which leads to a more effective data transmission to the different data sinks.